Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

12 Stron V  « < 7 8 9 10 11 > »   
Reply to this topicStart new topic
> Pager (stronicowanie), klasa, php4 i php5
nieraczek
post
Post #161





Grupa: Zarejestrowani
Postów: 405
Pomógł: 6
Dołączył: 12.01.2007

Ostrzeżenie: (0%)
-----


O dzięki za info (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
pianta_d
post
Post #162





Grupa: Zarejestrowani
Postów: 176
Pomógł: 18
Dołączył: 5.01.2007

Ostrzeżenie: (0%)
-----


Witam

Mam problem z sortowaniem po dwóch kolumnach.
Mam kod
  1. <?php
  2. $pager = new EPager('id', null, false,$orders,array('typ_ogloszenia' => 'DESC', 'nazwa' => 'ASC'));
  3. ?>

jednak nie srotuje po dwóch kolumnach tylko po pierwszej czyli typ_ogloszenia.

Jak zrobić, aby sortowało po dwóch lub więcej wybranych kolumnach?


EDIT



Poradziłem sobie, dzieki

Ten post edytował pianta_d 6.07.2009, 09:18:40
Go to the top of the page
+Quote Post
hondek
post
Post #163





Grupa: Zarejestrowani
Postów: 355
Pomógł: 50
Dołączył: 20.08.2007
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Witam!
Mam taki problem z klasa Pager:
kiedy przechodze np. dalej ">" Pager dodaje mi do urla : ppidPager=<nr_strony>
i tak np. po kilku przejsciach mam takiego url'a:
http://localhost/index.php?menu=stats&ppidPagera=1&ppidPagera=2&ppidPagera=3&ppidPagera=4 ... itd..

Wie ktos moze czym to moze byc spowodowane?
Tak tworze obiekt klasy :

  1. <?php
  2. $res = mysql_query($que);
  3.    $recordsCount = mysql_num_rows($res);
  4.    try{
  5.        $pager = new Pager('idPagera');
  6.        $pager->RecordsPerPage = 10; // Ilość rekordow na strone
  7.        $pager->SetTotalRecords($recordsCount);
  8.        $pager->Make(true);
  9.        $pag = $pager->Render();
  10.        $start = $pager->GetIndexRecordStart();
  11.        $end = $pager->GetIndexRecordEnd();
  12.    }
  13.    catch (Exception $e) {
  14.        echo $e->getMessage();
  15.    }
  16. ?>
Go to the top of the page
+Quote Post
nospor
post
Post #164





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




a jak wyswietlasz linki pagera? Sam cos jeszcze generujesz?
Go to the top of the page
+Quote Post
hondek
post
Post #165





Grupa: Zarejestrowani
Postów: 355
Pomógł: 50
Dołączył: 20.08.2007
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


nie, poprostu <?=$pag?>

jedyna rzecz jaka zmienilem w klasie to znak dolaczenia z '?' ma '&'

Ten post edytował hondek 15.07.2009, 15:50:21
Go to the top of the page
+Quote Post
nospor
post
Post #166





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
jedyna rzecz jaka zmienilem w klasie to znak dolaczenia z '?' ma '&'
no to zapewne to jest wlasnie przyczyna problemu (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
tomall
post
Post #167





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 1.03.2009

Ostrzeżenie: (0%)
-----


Witam
Czytam i czytam i znaleźć nie mogę.
Jak wyciągnąć z pagera tablicę z linkami, zamiast stringa z gotowym formatowaniem.
Wszędzie jest napisane, że wystarczy na 3 parametr Render dać true. Jednakże mi to nie działa.
  1. $pag = $pager->Render('','',true);

Po takim ustawieniu nadal w zmiennej $pag mam gotowe sformatowane linki.
Używam Smarty i wygodniej było by tworzyć linki np. w taki sposób:
  1. {foreach item=link from=$links}
  2. <div class='klasa_linku'>{$link}</div>
  3. {/foreach}

Korzystam z rozszerzenia EPager.


pozdrawiam




Go to the top of the page
+Quote Post
nospor
post
Post #168





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Metoda Make() zwraca ci tablice. Czytaj komentarze przy funkcjach (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
limonides
post
Post #169





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 30.05.2009

Ostrzeżenie: (0%)
-----


a ja mam takie zapytanie

mam plik ciekawostki.php w nim zawarte jest wyświetlanie ciekawostek oraz dzielenie ich na strony za pomocą tego pagera.

na stronie głównej index.php mam warunek:

  1. elseif ($_GET['m'] == 'menu' && $_GET['id'] == '7') {
  2. include('ciekawostki.php');
  3. }


jak chce przejść do drugiej strony to przenosi mnie do strony głównej a link mam taki index.php?ppidPagera=2

jak zrobić aby zadział pager w momencie kiedy zdefiniowany jest on w innym pliku.
Go to the top of the page
+Quote Post
nospor
post
Post #170





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Wszystko masz w komentarzach
Cytat
/**
* Konstruktor klasy
*
* @param string id - unikalne id pagera.
* @param string pageLink - adres, jaki będzie generowny do linków w pagerze
* Jeśli pageLink zawiera ciąg #PAGE#, oznaczać to będzie, iż link nie będzie modyfikowany przez klase, tylko
* będzie wyglądał jak zapodał użytkownik. Jedyne co zostanie podmienione to #PAGE# na numer strony.
* Jeśli pageLink będzie nullem, klasa wstawi parametr strony do linku uwzględniając przy tym wszystkie parametry jakie były w linku.

* @param mixed userGeneralParam - czy jako parametru strony używać parametru dla danego pagera, czy też ogólnego
* true - uzywać
* false - nie używać
* string - uzywać i ustawić taką nazwę parametru
* parametru określonego w $GeneralParamPageNumber
*/

czyli u Ciebie powinno np. byc
  1. $pager = new Pager('idPagera', null);
Go to the top of the page
+Quote Post
limonides
post
Post #171





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 30.05.2009

Ostrzeżenie: (0%)
-----


dzieki wielkieee
Go to the top of the page
+Quote Post
mwolodzko
post
Post #172





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 15.07.2010

Ostrzeżenie: (0%)
-----


Witam,
Mój problem polega na tym, że za cholery nie moge dodać do tego skryptu stronicowania.
Poniższy przyklad otwiera się w nowym okienku gdzie w postaci linków wyświatlane są rekordy pobrane z bazy, kliknięty tekst wpisuje się do formulaża w poprzednim okienku. Nie wiem jak dużo będzie rekordów wiec chciałbym dodać stronicowanie (i wyszukiwarke, ale to trochę później), ale za cholery nie wiem jak w tym przypadku to zrobić kombinowałem na sto milionów sposobów i nic, jak stronicowanie działa to nie działa wpisanie tekstu do formulaża i na odwrót. Jeżeli ktoś może mi pomóc bede bardzo wdzięczny.

Dzialanie skryptu pokazane jest pod adresem: http://vbch.nazwa.pl/iten/re1/visitas.php tam w formulażu przy polu "Tipo visita" jest link "(dodaj)" po kliknięciu ktorego otwiera się nowe okienko z pożiższym skryptem.



  1.  
  2. <?php
  3. $baza_host=("host");
  4. $baza_login=("login");
  5. $baza_haslo=("haslo");
  6. $baza_nazwa=("nazwa");
  7.  
  8. //Laczenie sie z baza mysql
  9. $polaczenie = mysql_connect($baza_host, $baza_login, $baza_haslo);
  10. $db = mysql_select_db($baza_nazwa);
  11.  
  12. $db_tables = array(
  13. 'iddetipovisita' => 'tipovisitas',
  14. 'jakas nazwa pola' => 'jakas nazwa tabeli' // itd.
  15. );
  16. ?>
  17. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  18. <html xmlns="http://www.w3.org/1999/xhtml">
  19. <head>
  20. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  21. <title>AJAX suggest</title>
  22. <meta name="keywords" content="" />
  23. <meta name="description" content="" />
  24. <script src="http://code.jquery.com/jquery-latest.js"></script>
  25. <link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title" charset="utf-8">
  26. </head>
  27. <body>
  28. <fieldset>
  29. <legend>Tipo visitas</legend>
  30. <input id="searchinput" type="text" name="search" value="" onkeyup="searchSuggest();" />
  31. <input id="searchsubmit" type="submit" value="Search" />
  32.  
  33. </fieldset>
  34. <script type="text/javascript">
  35. $(document).ready(function(){
  36. $('a').click(function(){
  37. v = $(this).html();
  38. $('input[name=<?php echo $_GET['id']; ?>]', opener.document).val(v);
  39. //window.close();
  40. });
  41. });
  42. </script>
  43. <ol>
  44.  
  45.  
  46. <?php
  47. $result = mysql_query('SELECT * FROM ' . $db_tables[$_GET['id']]);
  48. while($row = mysql_fetch_row($result))
  49. {
  50. echo '<li><a href="#">' . $row[1] . '</a></li>';
  51. }
  52. ?>


Ten post edytował mwolodzko 12.08.2010, 11:20:40
Go to the top of the page
+Quote Post
nospor
post
Post #173





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




1) Coś dużo choler ci się w tekst wcina.
2) I gdzie tu mój skrypt?
3) W paczce masz podane przykłady. W czym masz konkretnie problem?
Go to the top of the page
+Quote Post
mwolodzko
post
Post #174





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 15.07.2010

Ostrzeżenie: (0%)
-----


Konkretnie mój problem polega na tym, że trzeba dodać stronicowanie do tego skryptu, a nie bardzo wiem jak to zrobić, jak dodam stronicowanie to nie działa wpisywanie tekstu do formulaża i na odwrót tak jak pisałem w poprzednim poście.
Go to the top of the page
+Quote Post
nospor
post
Post #175





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No to pokaż jak dodajesz.
Go to the top of the page
+Quote Post
mwolodzko
post
Post #176





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 15.07.2010

Ostrzeżenie: (0%)
-----


Np tak:

  1. <script type="text/javascript">
  2. $(document).ready(function(){
  3. $('a').click(function(){
  4. v = $(this).html();
  5. $('input[name=<?php echo $_GET['id']; ?>]', opener.document).val(v);
  6. //window.close();
  7. });
  8. });
  9. </script>
  10. <ol>
  11. <?php/*
  12. $result = mysql_query('SELECT * FROM tipovisitas');
  13. while($row = mysql_fetch_row($result))
  14. */?>
  15. <?
  16. function pasek($rekordow,$na_stronie,$na_pasku,$skrypt,$s) {
  17. $stron = ceil($rekordow/$na_stronie);
  18. if ($s<1) $s=1;
  19. if ($s>$stron) $s=$stron;
  20. $koniec = $s+$na_pasku;
  21. if ($s<=$na_pasku) $koniec = $na_pasku*2+1;
  22. if ($koniec>$stron) $koniec = $stron;
  23. $start = $koniec-$na_pasku*2;
  24. if ($start<1) $start=1;
  25. if ($s>1) $p = "<a href='$skrypt".($s-1)."'><<<</a>";
  26. else $p = "<span style='color:gray'><<<</span>";
  27. if ($s<$stron) $n = "<a href='$skrypt".($s+1)."'>>>></a>";
  28. else $n = "<span style='color:gray'>>>></span>";
  29. for ($i=$start; $i<=$koniec; $i++) {
  30. if ($i==$s) $l .= " <span style='color:#cc0000;'><b>$i</b></span> ";
  31. else $l .= "<a href='$skrypt$i'>$i</a>";
  32. }
  33. if ($rekordow<1) $wynik = "brak informacji spełniających kryteria wyszukiwania";
  34. else $wynik = "znalezionych: $rekordow, strona $s z $stron<br />";
  35. if ($stron>1) $wynik .= "$p - $l - $n";
  36. return $wynik;
  37. }
  38.  
  39. $s = ($_GET["s"]>1)?number_format($_GET["s"], 0, "", ""):1;
  40. $na_stronie = 5;
  41. $na_pasku = 5;
  42. $skrypt = "options.php?s=";
  43.  
  44. if (mysql_connect($sql_serwer, $sql_login, $sql_haslo)
  45. and mysql_select_db($sql_baza)) {
  46.  
  47. $start = ($s-1)*$na_stronie;
  48. $wynik = mysql_query("SELECT SQL_CALC_FOUND_ROWS *
  49. FROM tipovisitas LIMIT $start, $na_stronie
  50. ");
  51. $rekordow = mysql_result(mysql_query("SELECT FOUND_ROWS()"),0);
  52.  
  53. $stron = ceil($rekordow/$na_stronie);
  54. if ($s>$stron and $rekordow>0) {
  55. $start = ($stron-1)*$na_stronie;
  56. $wynik = mysql_query("SELECT *
  57. FROM tipovisitas LIMIT $start, $na_stronie
  58. ");
  59. }
  60.  
  61. }
  62.  
  63. echo "<p style='text-align:center;'>";
  64. echo pasek($rekordow,$na_stronie,$na_pasku,$skrypt,$s);
  65. echo "</p>";
  66.  
  67. while($wynik and $dane = mysql_fetch_assoc($wynik)) {
  68. echo "<p>";
  69. foreach($dane as $pole) echo " [$pole] ";
  70. echo "</p>";
  71. }
  72. ?>
Go to the top of the page
+Quote Post
nospor
post
Post #177





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Słuchaj... piszesz że masz problem z moim pagerem gdy go dodajesz do swojego kodu. Proszę cię wiec, byś mi podał kod, w którym dodajesz mój pager. A ty co? Podsyłasz mi jakiś zupełnie inny kod.

Jeśli więc nie masz problemu z moim pagerem to czemu zawracasz gitare akurat w tym temacie?
Go to the top of the page
+Quote Post
mwolodzko
post
Post #178





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 15.07.2010

Ostrzeżenie: (0%)
-----


Ok, mój błąd znalazłem temat w google tytul tematu jest: "Pager (stronicowanie), klasa, php4 i php5", więc jak miałem problem ze stronicowaniem, napisałem tutaj. Nie zauważyłem że to dział: "gotowe rozwiązania".
Go to the top of the page
+Quote Post
edwarpan
post
Post #179





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 28.04.2010

Ostrzeżenie: (0%)
-----


Coś mi nie działa.
  1. <?php
  2. require('config.php');
  3.  
  4.  
  5.  
  6. require_once('Pager.class.php');
  7. $sql = 'SELECT count(*) FROM newsy';
  8. $result = mysql_query($sql);
  9. $row = mysql_fetch_array($result);
  10. $recordsCount = $row[0];//pobranie liczby rekordów
  11. try{
  12. $pager = new Pager('idPagera');
  13. $pager->SetTotalRecords($recordsCount);
  14. $pager->Make(true);
  15. $pag = $pager->Render();
  16. $start = $pager->GetIndexRecordStart();
  17. $end = $pager->GetIndexRecordEnd();
  18. }
  19. catch (Exception $e) {
  20. echo $e->getMessage();
  21. }
  22.  
  23. //zapytanie z uwzglenieniem stronicowania
  24. $sql = 'SELECT * FROM newsy LIMIT '.$start.','.($end - $start + 1);
  25. //...pobranie wyników i ich wyswietlenie
  26.  
  27. echo $pag;//wyswietlenie pager'a
  28.  
  29. ?>
Go to the top of the page
+Quote Post
nospor
post
Post #180





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Coś mi nie działa.
To coś napraw.....


Czy tak cięzko napisać czym objawia się to "niedziałanie"?

ps:
Cytat
//...pobranie wyników i ich wyswietlenie
Ale wstawiłeś wlasciwy kod w to miejsce?
Go to the top of the page
+Quote Post

12 Stron V  « < 7 8 9 10 11 > » 
Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.08.2025 - 22:33